VZX pingが飛ばない
問題文
Host01からHost02へのping
が飛びません。 ルーティング情報とかファイヤウォールは間違ってないと思うんですが・・・
トポロジ図
前提条件
Host01
やRouter
の既存の設定を削除してはならないHost02
に問題はない
初期状態
- Host01からHost02への
ping
ができない
終了状態
- Host01からHost02への
ping
ができ、疎通ができる - Host01, Router を再起動しても、終了状態が維持される
初期状態のマシンの設定(抜粋)
Routerの初期状態の設定(展開できます)
firewall { interface eth1 { out { name ETH1-OUT } } name ETH1-OUT { default-action drop rule 10 { action accept protocol tcp } } } interfaces { ethernet eth1 { address 172.16.255.254/16 hw-id 9c:a3:ba:32:4a:e9 } ethernet eth2 { address 172.17.255.254/16 hw-id 9c:a3:ba:32:9d:b6 } loopback lo { } }
Host01の初期状態の設定(展開できます)
interfaces { ethernet eth1 { address 172.16.0.1/16 hw-id 9c:a3:ba:32:03:7b } loopback lo { } } protocols { static { } }
解説
この問題は、2つのトラブルがありました。
- Host01からHost02のネットワークへのルーティング情報が消失していた
- Router上で
TCP
のみ許可し、他のプロトコルは破棄する firewallがあった
ルーティング情報は、例えば172.17.0.0/16ネットワークへの静的ルートを追加してあげると良いでしょう。
firewallに関しては、 ping
のプロトコル TCP
ではなく ICMP
なので、 新たに ICMP
を許可するルールを追加してあげることで、問題を解決することができます。
コマンド
トラブルを解決するために必要なコマンドの例を紹介します。
Host01(VyOS)のconfigureで
set protocols static route 172.17.0.0/16 next-hop 172.16.255.254
を打ち、Host01から172.17.0.0/16ネットワークへの経路を確保します。
続いて、Router(VyOS)のconfigureで
set firewall name ETH1-OUT rule 20 protocol icmp
set firewall name ETH1-OUT rule 20 action accept
を打ち、既存のfirewallに新たな icmp
を許可(accept)するルールを追加します。
なお、設定後に
commit
save
を打ち、設定を適用・保存することを忘れないようにしましょう。
採点基準
- Host01からのルートを設定した +40% (20点)
- Routerでファイアウォールを適切に設定した +40% (20点)
- ping疎通が可能である+20% (10点)
- 以下、減点
- 永続化されていない(
save
を抜かして再起動時に設定が保持されない)- ホスト毎に -20%(-10点)
- 永続化されていない(